B24 - Many Boxes
https://atcoder.jp/contests/tessoku-book/tasks/tessoku_book_cw
提出
code: python
n = int(input())
xy = list(map(int, input().split())) for _ in range(n)
print(xy)
解答
code: python
import bisect
# 配列 a の最長増加部分列(lIS)の長さを計算する
# 配列 dp を使わない実装方法を利用している
def lis(a):
length = 0
l = []
for i in range(n):
pos = bisect.bisect_left(l, ai)
if pos == length:
l.append(ai)
length += 1
else:
lpos = ai
return length
n = int(input())
x = None * n
y = None * n
for i in range(n):
xi, yi = map(int, input().split())
tmp = []
for i in range(n):
tmp.append([xi, -yi])
tmp.sort()
# print(tmp)
# 10, -30], 30, -50, 40, -60, 40, -10, [50, -20
a = []
for i in range(n):
a.append(-tmpi1)
# print(a)
# 30, 50, 60, 10, 20
print(lis(a))